import Axios from 'axios';
import qs from "qs";
import router from '../router'

export default {
  install(Vue, options) {
    Vue.prototype.http = Axios.create({
      // baseURL: 'https://www.yunxian.shop/',
      baseURL: 'http://www.yunxian.shop:8080', //测试服
      timeout: 50000,
      // crossDomain: true,
      // async:true,
      headers: { "Content-type": 'application/json' },
      withCredentials: true
    });
    // http request 拦截器
    // Vue.prototype.http.interceptors.request.use(
    //   config => {
    //     let token = Vue.prototype.$cookie.get("token")
    //     if (config.method === 'post') {
    //       // config.data =  qs.stringify(config.data)
    //       // config.headers['content-type'] = 'application/x-www-form-urlencoded'
    //     }
    //     // if (token) { // 不需要加token 注释掉
    //     //   config.data = config.data + `&token=${token}`
    //     // }
    //     if (!token) { // 不需要加token 注释掉
    //       router.replace({
    //         name: 'login',
    //       })
    //     }
    //     return config
    //   },
    //   err => {
    //     return Promise.reject(err);
    //   });
    // // http response 拦截器
    // Vue.prototype.http.interceptors.response.use(
    //   response => {
    //     if (response.data.code) {
    //       switch (response.data.code) {
    //         case 1006:
    //           // 如果用户没的登录则清除token信息并跳转到登录页面或 登陆失效，请关闭浏览器重新登陆
    //           Vue.prototype.$cookie.delete("token")
    //           router.replace({
    //             name: 'login',
    //           })
    //       }
    //     }
    //     return response;
    //   },
    //   error => {
    //     return Promise.reject(error)
    //   });
    Vue.prototype.getRandomNum = function (len) {
      len = len || 32;
      var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';    /****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/
      var maxPos = $chars.length;
      var pwd = '';
      for (var i = 0; i < len; i++) {
        pwd += $chars.charAt(Math.floor(Math.random() * maxPos));
      }
      return pwd;
    }
  }
};
